home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: Franz PD
/
Franz PD Disk #260 (1993)(Rhein-Sieg-Soft).zip
/
Franz PD Disk #260 (1993)(Rhein-Sieg-Soft).adf
/
MÄXJE
/
Mäxje2
(
.txt
)
< prev
next >
Wrap
AmigaBASIC Source Code
|
1993-08-06
|
18KB
|
800 lines
REM *** MÄXJE2 *** HP Biehl ***
REM *** Juni 1993 ***
DIM ps1(12),ps2(12)
s$="Amiga1 Mensch1Amiga2 Mensch2"
Anfang:
COLOR 1,0:CLS
PALETTE 0,0,0,0
PALETTE 1,0.9,0.9,0
PALETTE 2,0,0,1
LOCATE 2,31:PRINT "MÄXJE von HP BIEHL"
COLOR 3,0:LOCATE 3,31
PRINT "~~~~~~~~~~~~~~~~~~"
COLOR 1,2
LOCATE 5,24:PRINT " "
LOCATE 6,24:PRINT " neues Spiel starten "
LOCATE 7,24:PRINT " "
LOCATE 10,24:PRINT " "
LOCATE 11,24:PRINT " gespeichertes Spiel fortsetzen "
LOCATE 12,24:PRINT " "
LOCATE 15,24:PRINT " "
LOCATE 16,24:PRINT " zurück ins Hauptmenü "
LOCATE 17,24:PRINT " "
COLOR 3,0:LOCATE 20,24
PRINT "Bitte entsprechendes anklicken!"
LINE(185,32)-(440,55),3,b
LINE(185,72)-(440,95),3,b
LINE(185,112)-(440,135),3,b
auswahl:
WHILE MOUSE(0)=0:WEND
IF MOUSE(1)<185 OR MOUSE(1)>440 THEN auswahl
IF MOUSE(2)>31 AND MOUSE(2)<56 THEN auswahl1
IF MOUSE(2)>71 AND MOUSE(2)<96 THEN auswahl2
IF MOUSE(2)>111 AND MOUSE(2)<136 THEN auswahl3
GOTO auswahl
auswahl1:
COLOR 2,1
LOCATE 5,24:PRINT " "
LOCATE 6,24:PRINT " neues Spiel starten "
LOCATE 7,24:PRINT " "
GOTO Einstellungen
auswahl2:
COLOR 2,1
LOCATE 10,24:PRINT " "
LOCATE 11,24:PRINT " gespeichertes Spiel fortsetzen "
LOCATE 12,24:PRINT " "
GOTO fortsetz
auswahl3:
COLOR 2,1
LOCATE 15,24:PRINT " "
LOCATE 16,24:PRINT " zurück ins Hauptmenü "
LOCATE 17,24:PRINT " "
CHAIN"Mäxje"
fortsetz:
OPEN"I",#1,"MaexjeSave"
FOR pu=1 TO 12
INPUT #1,ps1(pu):INPUT #1,ps2(pu)
NEXT pu
FOR pu=1 TO 4
INPUT #1,gt(pu):INPUT #1,gmt(pu)
INPUT #1,gspi(pu):INPUT #1,gmpunk(pu)
NEXT pu
INPUT #1,Spiel:INPUT #1,maxpu
CLOSE #1
IF Spiel=0 THEN
CLS:LOCATE 10,25
PRINT "Es ist kein Spiel gespeichert!"
LOCATE 12,27:PRINT "Mausklick für neues Spiel!"
FOR wart=1 TO 400:NEXT wart
WHILE MOUSE(0)=0:WEND
GOTO Einstellungen
END IF
GOTO Spiel
Einstellungen:
SCREEN 1,320,200,3,1
WINDOW 2,"Einstellungen",,16,1
PALETTE 0,0.8,0.8,0.4
PALETTE 1,0,0.2,0.2
okx1=265:okx2=297
oky1=152:oky2=176
EndeEinst:
COLOR 1,0:CLS:EinstEnd=5
LOCATE 3,14:PRINT "Spielende bei"
LOCATE 11,17:PRINT "Punkten"
COLOR 1,3
LOCATE 20,34:PRINT " "
LOCATE 21,34:PRINT " ok "
LOCATE 22,34:PRINT " "
enty1=40:enty2=64
entx1=17:entx2=57
entx3=65:entx4=105
entx5=113:entx6=153
entx7=161:entx8=201
entx9=209:entx10=249
entx11=257:entx12=297
GOSUB EndeEinst2
IF MOUSE(0)=1 THEN FOR wart=1 TO 100:NEXT wart
EndeEinst1:
WHILE MOUSE(0)=0:WEND
m1=MOUSE(1):m2=MOUSE(2)
IF m1>okx1 AND m1<okx2 AND m2>oky1 AND m2<oky2 THEN
maxpu=EinstEnd:GOTO Spiel
END IF
IF m2<enty1 OR m2>enty2 THEN EndeEinst1
EinstEnd=0
IF m1>entx1 AND m1<entx2 THEN EinstEnd=5
IF m1>entx3 AND m1<entx4 THEN EinstEnd=6
IF m1>entx5 AND m1<entx6 THEN EinstEnd=7
IF m1>entx7 AND m1<entx8 THEN EinstEnd=8
IF m1>entx9 AND m1<entx10 THEN EinstEnd=9
IF m1>entx11 AND m1<entx12 THEN EinstEnd=10
IF EinstEnd=0 THEN EndeEinst1
GOSUB EndeEinst2
GOTO EndeEinst1
EndeEinst2:
FOR el=3 TO 33 STEP 6
COLOR 1,6
IF EinstEnd=(el+3)/6+4 THEN COLOR 1,5
LOCATE 6,el:PRINT " "
LOCATE 7,el:PRINT USING " ## ";(el+3)/6+4
LOCATE 8,el:PRINT " "
NEXT el
RETURN
Spiel:
maxSpieler=4
SCREEN 2,640,200,3,2
WINDOW 2,"Mäxje 2.0",,16,2
WINDOW OUTPUT 1:CLS:LOCATE 8,2
PRINT "Zum fortsetzen":PRINT
PRINT " 1. Linke Maustaste in diesem Fenster klicken"
PRINT " 2. Mit der rechten Maustaste im Pulldown-Menü RUN Continue anwählen"
PRINT
WINDOW 2
PALETTE 1,0.46,0,0
PALETTE 0,1,1,0.7
PALETTE 2,0.46,0,0
PALETTE 3,1,0.6,0.4
PALETTE 4,0.6,1,0.6
LOCATE 3,2:PRINT "Amiga1:"
LOCATE 4,2:PRINT "Mensch1:"
IF maxSpieler>2 THEN LOCATE 5,2:PRINT "Amiga2:"
IF maxSpieler>3 THEN LOCATE 6,2:PRINT "Mensch2:"
FOR maxp=1 TO maxpu
LINE (79,16)-(80+maxp*15,24),1,b
LINE (79,24)-(80+maxp*15,32),1,b
IF maxSpieler>2 THEN LINE (79,32)-(80+maxp*15,40),1,b
IF maxSpieler>3 THEN LINE (79,40)-(80+maxp*15,48),1,b
NEXT maxp
wp=470:RANDOMIZE TIMER
gwpo1=39:gwl1=66
gwpo2=63:gwl2=79
gwpo3=87:gwl3=92
WRahmen:
FOR wa=5 TO 125 STEP 24
LINE (wp-2,wa+1)-(wp,wa),1
LINE -(wp+32,wa),1:LINE -(wp+34,wa+1)
LINE (wp-2,wa+19)-(wp,wa+20)
LINE -(wp+32,wa+20):LINE -(wp+34,wa+19)
LINE (wp-2,wa+2)-(wp-2,wa+19)
LINE (wp+34,wa+2)-(wp+34,wa+19)
NEXT wa
w6=10
WPunkte:
w5=w6+24:w4=w6+48
w3=w6+72:w2=w6+96:w1=w6+120
LINE (wp+6,w6)-(wp+7,w6)
LINE (wp+16,w6)-(wp+17,w6)
LINE (wp+26,w6)-(wp+27,w6)
LINE (wp+6,w5)-(wp+7,w5)
LINE (wp+26,w5)-(wp+27,w5)
LINE (wp+16,w5+5)-(wp+17,w5+5)
LINE (wp+6,w4)-(wp+7,w4)
LINE (wp+26,w4)-(wp+27,w4)
IF w6=10 THEN
LINE (wp+26,w3)-(wp+27,w3)
LINE (wp+26,w2)-(wp+27,w2)
END IF
IF w6=20 THEN
LINE (wp+6,w3)-(wp+7,w3)
LINE (wp+6,w2)-(wp+7,w2)
END IF
LINE (wp+16,w3+5)-(wp+17,w3+5)
LINE (wp+16,w1+5)-(wp+17,w1+5)
IF w6=10 THEN w6=20:GOTO WPunkte
IF wp=470 THEN wp=530:GOTO WRahmen
FOR wfa=12 TO 132 STEP 24
PAINT (480,wfa),3,1
PAINT (540,wfa),3,1
NEXT wfa
FOR wgp=20 TO 131 STEP 111
LINE (wgp,60)-(wgp,100)
LINE -(wgp+6,103):LINE -(wgp+86,103)
LINE -(wgp+92,100):LINE -(wgp+92,60)
LINE -(wgp+86,57):LINE -(wgp+6,57)
LINE -(wgp,60)
NEXT wgp
Beginn:
Spiel=Spiel+1
IF Spiel=4 OR Spiel=10 THEN SpiHuma=1
IF Spiel=1 OR Spiel=3 OR Spiel=11 THEN spieler=1
IF Spiel=4 OR Spiel=7 OR Spiel=12 THEN spieler=2
IF Spiel=2 OR Spiel=6 OR Spiel=9 THEN spieler=3
IF Spiel=5 OR Spiel=8 OR Spiel=10 THEN spieler=4
NeuRund:
WAnz=0:Wlast=0:maex=0:wert=0
LINE (80,17)-(79+punkte(1)*15,23),5,bf
LINE (80,25)-(79+punkte(2)*15,31),5,bf
IF maxSpieler>2 THEN LINE (80,33)-(79+punkte(3)*15,39),5,bf
IF maxSpieler>3 THEN LINE (80,41)-(79+punkte(4)*15,47),5,bf
IF punkte(1)=maxpu OR punkte(2)=maxpu OR punkte(3)=maxpu OR punkte(4)=maxpu THEN tabell
IF punkte(1)+punkte(2)+punkte(3)+punkte(4)=maxpu*2-2 THEN tabell
NeuWurf:
wurf=0
WAnz=WAnz+1:Wlast=wert:gf=0
Complueg=0:WAnsa1=0:WAnsa2=0
GOSUB anderReihe
IF spieler=1 OR spieler=3 THEN CompAnsag
IF SpiHuma=1 THEN GOSUB Wegguck
WWurf:
gf=0
GOSUB entscheidweg
LINE (gwpo1,gwl1)-(gwpo3+5,gwl3+2),wuefa,bf
LINE (gwpo1+111,gwl1)-(gwpo3+116,gwl3+3),wuefa,bf
PAINT (gwpo1-1,gwl1-1),2,1
PAINT (gwpo1+110,gwl1-1),2,1
FOR sou=1 TO 50
SOUND 600,0.1,255,0
NEXT sou
FOR ww=1 TO 2
gwp1=gwpo1
gwp2=gwpo2
gwp3=gwpo3
IF ww=2 THEN
gwp1=gwpo1+111
gwp2=gwpo2+111
gwp3=gwpo3+111
END IF
wurf=INT(RND(1)*6)+1
ON wurf GOSUB Eins,Zwei,Eins,Vier,Vier,Vier
IF ww=1 THEN wurf1=wurf :ELSE wurf2=wurf
NEXT ww
IF spieler=1 OR spieler=3 THEN CompAnsag1
IF spieler=2 OR spieler=4 THEN aufd=1:GOTO aufdeck
Entscheid:
IF MOUSE(0)>0 THEN FOR wart=1 TO 100:NEXT wart
IF SpiHuma=0 THEN GOSUB wechsel
IF SpiHuma=1 THEN
PAINT (gwpo1-1,gwl1-1),2,1
PAINT (gwpo1+110,gwl1-1),2,1
GOSUB Hinguck
END IF
GOSUB anderReihe
IF spieler=1 OR spieler=3 THEN GOSUB WMarkweg
IF spieler=1 OR spieler=3 THEN CompAnsag
COLOR 1,5
LOCATE 16,4:PRINT " "
LOCATE 17,4:PRINT " Aufdecken "
LOCATE 18,4:PRINT " "
LOCATE 16,18:PRINT " "
LOCATE 17,18:PRINT " Würfeln "
LOCATE 18,18:PRINT " "
Entscheid1:
WHILE MOUSE(0)=0:WEND
IF MOUSE(2)<120 OR MOUSE(2)>144 THEN Entscheid1
IF MOUSE(1)<26 OR MOUSE(1)>226 THEN Entscheid1
IF MOUSE(1)<115 THEN
aufd=0
IF SpiHuma=1 THEN GOSUB WMarkweg
GOTO aufdeck
END IF
wuefa=2
IF MOUSE(1)>138 THEN
IF SpiHuma=1 THEN GOSUB WMarkweg
GOTO NeuWurf
END IF
GOTO Entscheid1
CompAnsag:
IF wurf>0 THEN Glaubensfrage
IF Spiel<>9 AND Spiel<>3 THEN Glaubensfrage :ELSE WWurf
CompAnsag1:
IF gf=1 THEN WWurf
Complueg=0:lueg=0
IF wurf1=1 AND wurf2=2 THEN Maexje
IF wurf1=2 AND wurf2=1 THEN Maexje
wu1=wurf1:wu2=wurf2
GOSUB WWert
IF wert<42 OR wert<Wlast THEN luegen
caw1=(6-wur1)*24+7
caw2=(6-wur2)*24+7
PAINT(wp-59,caw1),4,1
PAINT(wp+1,caw2),4,1
GOTO Entscheid
luegen:
IF Wlast>100 THEN
wu1=INT(RND(1)*(7-(Wlast-100)/11))+(Wlast-100)/11
wu2=wu1
ELSE
wu1=INT(RND(1)*6)+1
wu2=INT(RND(1)*6)+1
END IF
GOSUB WWert
IF wert<Wlast THEN luegen
IF Wlast<100 AND wert>100 THEN
IF INT(RND(1)*2)=1 THEN luegen
END IF
IF wert<42 THEN luegen
caw1=(6-wur1)*24+7
caw2=(6-wur2)*24+7
PAINT(wp-59,caw1),4,1
PAINT(wp+1,caw2),4,1
Complueg=spieler
GOTO Entscheid
Glaubensfrage:
Glauben=INT(RND(1)*100)+1:gf=1
IF Spiel=3 OR Spiel=9 THEN Cocoglauben
IF wert<50 THEN
IF Glauben>=5*WAnz-16 THEN CompAnsag1 :ELSE nichtglauben
END IF
IF wert<60 THEN
IF Glauben>=6*WAnz-14+(wert-42)*2+(Wlast-42)*2 THEN CompAnsag1 :ELSE nichtglauben
END IF
IF wert<100 THEN
IF Glauben>=8*WAnz-22+(wert-56)*5+(Wlast-52)*4 THEN CompAnsag1 :ELSE nichtglauben
END IF
IF Glauben>9*WAnz-26+(wert-100)/4+80+(Wlast-62)*5 THEN CompAnsag1 :ELSE nichtglauben
Cocoglauben:
IF wert<50 THEN
IF Glauben>=5*WAnz-16 THEN NeuWurf :ELSE nichtglauben
END IF
IF wert<60 THEN
IF Glauben>=5*WAnz-12+(wert-42)*2+(Wlast-42)*2 THEN NeuWurf :ELSE nichtglauben
END IF
IF wert<100 THEN
IF Glauben>=5*WAnz-19+(wert-56)*5+(Wlast-52)*4 THEN NeuWurf :ELSE nichtglauben
END IF
IF Glauben>8*WAnz-24+(wert-100)/4+80+(Wlast-62)*5 THEN NeuWurf
nichtglauben:
GOSUB Glaubenachricht
GOTO aufdeck
Maexje:
FOR sou=300 TO 360 STEP 20
SOUND sou,8,250
NEXT sou
maex=1:aufd=0
GOSUB wechsel
punkte(spieler)=punkte(spieler)+1
GOTO aufdeck
WWert:
wur1=wu1:wur2=wu2
IF wu1=wu2 THEN wert=100+10*wu1+wu2
IF wu1>wu2 THEN wert=wu1*10+wu2
IF wu1<wu2 THEN wert=wu1+wu2*10:wur1=wu2:wur2=wu1
RETURN
aufdeck:
GOSUB entscheidweg
GOSUB Nachrichtweg
IF WAnz<>1 THEN GOSUB WMarkweg
IF SpiHuma<>1 AND spieler<>1 AND spieler<>3 AND WAnz=1 AND wert>0 THEN GOSUB WMarkweg
PAINT (gwpo1-1,gwl1-1),3,1
PAINT (gwpo1+110,gwl1-1),3,1
IF aufd=1 THEN Ansagen1
IF maex=1 THEN NeuRund
IF Complueg=1 OR Complueg=3 THEN
punkte(Complueg)=punkte(Complueg)+1
spieler=Complueg/2+4.5
END IF
IF Complueg=0 AND lueg=0 AND spieler=4 THEN punkte(4)=punkte(4)+1
IF Complueg=0 AND lueg=0 AND spieler=2 THEN punkte(2)=punkte(2)+1
IF lueg=2 OR lueg=4 THEN punkte(lueg)=punkte(lueg)+1:spieler=lueg
IF lueg=0 AND spieler=1 THEN punkte(1)=punkte(1)+1
IF lueg=0 AND spieler=3 THEN punkte(3)=punkte(3)+1
IF spieler=5 THEN spieler=1
IF spieler=6 THEN spieler=3
GOTO NeuRund
Ansagen1:
IF wurf1=1 AND wurf2=2 THEN Maexje
IF wurf1=2 AND wurf2=1 THEN Maexje
wpa=wp-59:WAnsa1=0:aufd=0
GOSUB AnsagNachricht
IF MOUSE(0)>0 THEN FOR wart=1 TO 250:NEXT wart
WHILE MOUSE(0)=0:WEND
IF MOUSE(1)<wpa-1 OR MOUSE(1)>wpa+39 THEN Ansagen1
IF MOUSE(2)>6 AND MOUSE(2)<24 THEN
PAINT (wpa,7),4,1
WAnsa1=6
END IF
IF MOUSE(2)>30 AND MOUSE(2)<48 THEN
PAINT (wpa,31),4,1
WAnsa1=5
END IF
IF MOUSE(2)>54 AND MOUSE(2)<72 THEN
PAINT (wpa,55),4,1
WAnsa1=4
END IF
IF MOUSE(2)>78 AND MOUSE(2)<96 THEN
PAINT (wpa,79),4,1
WAnsa1=3
END IF
IF MOUSE(2)>102 AND MOUSE(2)<120 THEN
PAINT (wpa,103),4,1
WAnsa1=2
END IF
IF MOUSE(2)>126 AND MOUSE(2)<144 THEN
PAINT (wpa,127),4,1
WAnsa1=1
END IF
GOSUB Nachrichtweg
IF WAnsa1=0 THEN Ansagen1
IF MOUSE(0)=1 THEN FOR wart=1 TO 100:NEXT wart
Ansagen2:
WAnsa2=0
WHILE MOUSE(0)=0:WEND
IF MOUSE(1)<wp OR MOUSE(1)>wp+40 THEN Ansagen2
IF MOUSE(2)>6 AND MOUSE(2)<24 AND WAnsa1>5 THEN
PAINT (wp+1,7),4,1
WAnsa2=6
END IF
IF MOUSE(2)>30 AND MOUSE(2)<48 AND WAnsa1>4 THEN
PAINT (wp+1,31),4,1
WAnsa2=5
END IF
IF MOUSE(2)>54 AND MOUSE(2)<72 AND WAnsa1>3 THEN
PAINT (wp+1,55),4,1
WAnsa2=4
END IF
IF MOUSE(2)>78 AND MOUSE(2)<96 AND WAnsa1>2 THEN
PAINT (wp+1,79),4,1
WAnsa2=3
END IF
IF MOUSE(2)>102 AND MOUSE(2)<120 AND WAnsa1>1 THEN
PAINT (wp+1,103),4,1
WAnsa2=2
END IF
IF MOUSE(2)>126 AND MOUSE(2)<144 THEN
PAINT (wp+1,127),4,1
WAnsa2=1
END IF
IF WAnsa2=0 THEN Ansagen2
wu1=WAnsa1:wu2=WAnsa2:GOSUB WWert
IF wert<Wlast THEN Gehtnich
korrekt:
COLOR 1,5
LOCATE 20,59:PRINT " "
LOCATE 21,59:PRINT " OK! "
LOCATE 22,59:PRINT " "
LOCATE 20,67:PRINT " "
LOCATE 21,67:PRINT " neu "
LOCATE 22,67:PRINT " "
IF MOUSE(0)>0 THEN FOR wart=1 TO 300:NEXT wart
korrekt1:
WHILE MOUSE(0)=0:WEND
wuefa=3
lueg=spieler
IF WAnsa1=wurf1 AND WAnsa2=wurf2 THEN lueg=0
IF WAnsa1=wurf2 AND WAnsa2=wurf1 THEN lueg=0
IF MOUSE(1)<466 OR MOUSE(1)>565 THEN korrekt1
IF MOUSE(2)>175 OR MOUSE(2)<152 THEN korrekt1
IF MOUSE(1)<504 THEN
FOR wart=1 TO 100:NEXT wart
GOTO Spielerwechsel
END IF
IF MOUSE(1)<528 THEN korrekt1
PAINT (wpa,151-24*WAnsa1),3,1
PAINT (wp+1,151-24*WAnsa2),3,1
GOSUB korrektweg
GOTO Ansagen1
Nachrichten:
Gehtnich:
COLOR 1,5
LOCATE 3,33:PRINT " Du darfst nicht "
LOCATE 4,33:PRINT " unterbieten! "
LOCATE 5,33:PRINT " Also nochmal! "
GOSUB WMarkweg
GOTO Ansagen1
AnsagNachricht:
COLOR 1,5
LOCATE 3,33:PRINT " Ansagen: Zuerst "
LOCATE 4,33:PRINT " die höhere Zahl "
LOCATE 5,33:PRINT " links anklicken! "
RETURN
Glaubenachricht:
COLOR 1,5
LOCATE 3,33:PRINT " Das glaube ich "
LOCATE 4,33:PRINT " Dir nicht! Ich "
LOCATE 5,33:PRINT " decke auf. "
FOR wart=1 TO 1500:NEXT wart
RETURN
Wegguck:
COLOR 1,5
LOCATE 3,33:PRINT " Anderer Mensch "
LOCATE 4,33:PRINT " weggucken bis "
LOCATE 5,33:PRINT " zur Entwarnung "
RETURN
Hinguck:
COLOR 1,5
LOCATE 3,33:PRINT " Jetzt darf er "
LOCATE 4,33:PRINT " wieder gucken, "
LOCATE 5,33:PRINT " d.h. er muß sogar "
RETURN
Nachrichtweg:
COLOR 1,0
LOCATE 3,33:PRINT " "
LOCATE 4,33:PRINT " "
LOCATE 5,33:PRINT " "
RETURN
Spielerwechsel:
GOSUB korrektweg
GOSUB wechsel
IF SpiHuma=1 THEN Entscheid
GOSUB WMarkweg
GOTO NeuWurf
wechsel:
SpiHuma=0
spil=Spiel:IF spil>6 THEN spil=spil-6
IF spil>1 THEN wechsel2
IF spieler=1 THEN spieler=2 :ELSE spieler=1
RETURN
wechsel2:
IF spil>2 THEN wechsel3
IF spieler=3 THEN spieler=4 :ELSE spieler=3
RETURN
wechsel3:
IF spil>3 THEN wechsel4
IF spieler=1 THEN spieler=3 :ELSE spieler=1
RETURN
wechsel4:
IF spil>4 THEN wechsel5
IF spieler=2 THEN spieler=4 :ELSE spieler=2
SpiHuma=1:RETURN
wechsel5:
IF spil>5 THEN wechsel6
IF spieler=4 THEN spieler=1 :ELSE spieler=4
RETURN
wechsel6:
IF spieler=3 THEN spieler=2 :ELSE spieler=3
RETURN
WMarkweg:
IF WAnsa1>0 THEN caw1=151-24*WAnsa1
IF WAnsa2>0 THEN caw2=151-24*WAnsa2
PAINT(wp-59,caw1),3,1
PAINT(wp+1,caw2),3,1
RETURN
entscheidweg:
COLOR 1,0
LOCATE 16,4:PRINT " "
LOCATE 17,4:PRINT " "
LOCATE 18,4:PRINT " "
LOCATE 16,18:PRINT " "
LOCATE 17,18:PRINT " "
LOCATE 18,18:PRINT " "
RETURN
korrektweg:
COLOR 1,0
LOCATE 20,59:PRINT " "
LOCATE 21,59:PRINT " "
LOCATE 22,59:PRINT " "
LOCATE 20,67:PRINT " "
LOCATE 21,67:PRINT " "
LOCATE 22,67:PRINT " "
RETURN
anderReihe:
COLOR 1,0
LOCATE 1,2:PRINT MID$(s$,spieler*7-6,7);" ist dran. "
RETURN
Eins:
LINE (gwp2,gwl2)-(gwp2+5,gwl2+2),1,bf
IF wurf=1 THEN RETURN
Zwei:
LINE (gwp1,gwl3)-(gwp1+5,gwl3+2),1,bf
LINE (gwp3,gwl1)-(gwp3+5,gwl1+2),1,bf
RETURN
Vier:
LINE (gwp1,gwl1)-(gwp1+5,gwl1+2),1,bf
LINE (gwp1,gwl3)-(gwp1+5,gwl3+2),1,bf
LINE (gwp3,gwl1)-(gwp3+5,gwl1+2),1,bf
LINE (gwp3,gwl3)-(gwp3+5,gwl3+2),1,bf
IF wurf=4 THEN RETURN
IF wurf=6 THEN Sechs
Fuenf:
LINE (gwp2,gwl2)-(gwp2+5,gwl2+2),1,bf
RETURN
Sechs:
LINE (gwp2,gwl1)-(gwp2+5,gwl1+2),1,bf
LINE (gwp2,gwl3)-(gwp2+5,gwl3+2),1,bf
RETURN
tabell:
WINDOW 3," Spiele + Tabelle",,16,2
IF Spiel=1 OR Spiel=7 THEN
punkte(3)=-1:punkte(4)=-1
gt(1)=gt(1)+punkte(2)
gt(2)=gt(2)+punkte(1)
gspi(1)=gspi(1)+1
gspi(2)=gspi(2)+1
ps1(Spiel)=punkte(1)
ps2(Spiel)=punkte(2)
END IF
IF Spiel=2 OR Spiel=8 THEN
punkte(1)=-1:punkte(2)=-1
gt(3)=gt(3)+punkte(4)
gt(4)=gt(4)+punkte(3)
gspi(3)=gspi(3)+1
gspi(4)=gspi(4)+1
ps1(Spiel)=punkte(3)
ps2(Spiel)=punkte(4)
END IF
IF Spiel=3 OR Spiel=9 THEN
punkte(2)=-1:punkte(4)=-1
gt(1)=gt(1)+punkte(3)
gt(3)=gt(3)+punkte(1)
gspi(1)=gspi(1)+1
gspi(3)=gspi(3)+1
ps1(Spiel)=punkte(1)
ps2(Spiel)=punkte(3)
END IF
IF Spiel=4 OR Spiel=10 THEN
punkte(1)=-1:punkte(3)=-1
gt(4)=gt(4)+punkte(2)
gt(2)=gt(2)+punkte(4)
gspi(4)=gspi(4)+1
gspi(2)=gspi(2)+1
ps1(Spiel)=punkte(2)
ps2(Spiel)=punkte(4)
END IF
IF Spiel=5 OR Spiel=11 THEN
punkte(2)=-1:punkte(3)=-1
gt(1)=gt(1)+punkte(4)
gt(4)=gt(4)+punkte(1)
gspi(1)=gspi(1)+1
gspi(4)=gspi(4)+1
ps1(Spiel)=punkte(4)
ps2(Spiel)=punkte(1)
END IF
IF Spiel=6 OR Spiel=12 THEN
punkte(1)=-1:punkte(4)=-1
gt(3)=gt(3)+punkte(2)
gt(2)=gt(2)+punkte(3)
gspi(3)=gspi(3)+1
gspi(2)=gspi(2)+1
ps1(Spiel)=punkte(3)
ps2(Spiel)=punkte(2)
END IF
FOR pu=1 TO 4
IF punkte(pu)>=maxpu-1 THEN gmpunk(pu)=gmpunk(pu)+punkte(pu)+2-maxpu
IF punkte(pu)>0 THEN gmt(pu)=gmt(pu)+punkte(pu)
gpunk(pu)=gspi(pu)*2-gmpunk(pu)
td(pu)=gt(pu)-gmt(pu)
NEXT pu
LOCATE 2,2:PRINT "Amiga1 - Mensch1"
LOCATE 3,2:PRINT "Amiga2 - Mensch2"
LOCATE 4,2:PRINT "Amiga1 - Amiga2"
LOCATE 5,2:PRINT "Mensch1 - Mensch2"
LOCATE 6,2:PRINT "Mensch2 - Amiga1"
LOCATE 7,2:PRINT "Amiga2 - Mensch1"
LOCATE 2,37:PRINT "Mensch1 - Amiga1"
LOCATE 3,37:PRINT "Mensch2 - Amiga2"
LOCATE 4,37:PRINT "Amiga2 - Amiga1"
LOCATE 5,37:PRINT "Mensch2 - Mensch1"
LOCATE 6,37:PRINT "Amiga1 - Mensch2"
LOCATE 7,37:PRINT "Mensch1 - Amiga2"
FOR pu=1 TO 6
IF pu=Spiel THEN COLOR 3,0 :ELSE COLOR 1,0
LOCATE pu+1,22:PRINT ps2(pu);":";ps1(pu)
NEXT pu
FOR pu=7 TO 12
IF pu=Spiel THEN COLOR 3,0 :ELSE COLOR 1,0
LOCATE pu-5,57:PRINT ps1(pu);":";ps2(pu)
NEXT pu
tabelle:
FOR pu=1 TO 4
platz(pu)=1:glp(pu)=0
NEXT pu
FOR pu=1 TO 3
FOR pla=pu+1 TO 4
IF gpunk(pu)>gpunk(pla) THEN
platz(pla)=platz(pla)+1
GOTO nextpla
END IF
IF gpunk(pla)>gpunk(pu) THEN
platz(pu)=platz(pu)+1
GOTO nextpla
END IF
IF gspi(pu)<gspi(pla) THEN
platz(pla)=platz(pla)+1
GOTO nextpla
END IF
IF gspi(pla)<gspi(pu) THEN
platz(pu)=platz(pu)+1
GOTO nextpla
END IF
IF td(pu)>td(pla) THEN
platz(pla)=platz(pla)+1
GOTO nextpla
END IF
IF td(pla)>td(pu) THEN
platz(pu)=platz(pu)+1
GOTO nextpla
END IF
IF gt(pu)>gt(pla) THEN
platz(pla)=platz(pla)+1
GOTO nextpla
END IF
IF gt(pla)>gt(pu) THEN
platz(pu)=platz(pu)+1
GOTO nextpla
END IF
glp(pla)=glp(pla)+1
nextpla:
NEXT pla
NEXT pu
COLOR 5,0:LOCATE 14,14
PRINT "Sp. Punkte `Tore` TD"
LOCATE 15,14
PRINT "----------------------------"
COLOR 1,0
FOR pu=1 TO 4
po=15+platz(pu)+glp(pu)
sp$=MID$(s$,pu*7-6,7)
LOCATE po,2
PRINT USING "#. \ \ # ## - ## ## : ## ###";platz(pu);sp$;gspi(pu);gpunk(pu);gmpunk(pu);gt(pu);gmt(pu);td(pu)
NEXT pu
IF Spiel=12 THEN Schluss
COLOR 1,5
LOCATE 14,52:PRINT "-----------"
LOCATE 15,52:PRINT " weiter "
LOCATE 16,52:PRINT "-----------"
LOCATE 18,52:PRINT "-----------"
LOCATE 19,52:PRINT " speichern "
LOCATE 20,52:PRINT "-----------"
IF MOUSE(0)>0 THEN FOR wart=1 TO 300:NEXT wart
weiter:
WHILE MOUSE(0)=0:WEND
IF MOUSE(1)<409 OR MOUSE(1)>497 THEN weiter
IF MOUSE(2)<129 AND MOUSE(2)>103 THEN naechstSpi
IF MOUSE(2)<161 AND MOUSE(2)>135 THEN Speich
GOTO weiter
Schluss:
COLOR 1,5
LOCATE 16,52:PRINT "-----------"
LOCATE 17,52:PRINT " E N D E "
LOCATE 18,52:PRINT "-----------"
WHILE MOUSE(0)=0:WEND
IF MOUSE(1)<409 OR MOUSE(1)>497 THEN Schluss
IF MOUSE(2)<145 AND MOUSE(2)>119 THEN
WINDOW CLOSE 3:CHAIN"Mäxje"
END IF
GOTO Schluss
Speich:
OPEN"O",#1,"MaexjeSave"
FOR pu=1 TO 12
WRITE #1,ps1(pu):WRITE #1,ps2(pu)
NEXT pu
FOR pu=1 TO 4
WRITE #1,gt(pu):WRITE #1,gmt(pu)
WRITE #1,gspi(pu):WRITE #1,gmpunk(pu)
NEXT pu
WRITE #1,Spiel:WRITE #1,maxpu
CLOSE #1
WINDOW CLOSE 3
CHAIN"Mäxje"
naechstSpi:
WINDOW CLOSE 3
punkte(1)=0:punkte(2)=0:punkte(3)=0:punkte(4)=0
LINE (80,17)-(79+maxpu*15,47),0,bf
FOR maxp=1 TO maxpu
LINE (79,16)-(80+maxp*15,24),1,b
LINE (79,24)-(80+maxp*15,32),1,b
IF maxSpieler>2 THEN LINE (79,32)-(80+maxp*15,40),1,b
IF maxSpieler>3 THEN LINE (79,40)-(80+maxp*15,48),1,b
NEXT maxp
FOR caw=7 TO 127 STEP 24
PAINT (wp-59,caw),3,1
PAINT (wp+1,caw),3,1
NEXT caw
GOTO Beginn